package lt.egidijus.aatest.utils;

import java.io.Serializable;

public class Constants implements Serializable {
	/**
	 * 
	 */
	private static final long serialVersionUID = -8301639294000529850L;
	/**
	 * Name used for created class objects.
	 */
	public static String classObjectName = "test";
	/**
	 * Default depth how deeply to search for parameters.
	 */
	public static int depth = 3;
	/**
	 * Postfix for generated test classes.
	 */
	public static String testClassPostfix = "Test";

	/**
	 * Prefix for generated method name.
	 */
	public static String testMethodPrefix = "test";

	/**
	 * Flag if save results to different root folder.
	 */
	public static boolean differentFolder = Boolean.TRUE;

	/**
	 * Folder name where to save if differentFolder flag is set.
	 */
	public static String folderName = "src";
	
	/**
	 * Folder name where to save if differentFolder flag is set.
	 */
	public static String testProjectName = "AChartEngineTests";
	
	public static String projectName = "AChartEngine";

	/**
	 * Error message when no constructors can be found.
	 */
	public static String errorNoConstructor = "No proper construcor can be found";

	/**
	 * Holds flags if to check classes hierarchy.
	 */
	public static boolean searchParents = false;

	/**
	 * How deep to search for hierarchies.
	 */
	public static int parentSearchLevel = 3;

	/**
	 * Flag if show performance results.
	 */
	public static boolean showTimes = true;
	
	public static String randomPostfix = "";
	public static String OCLPostfix = "OCL";
	public static String geneticPostfix = "Genetic";
	
	/**
	 * Postfix for generated test classes random method
	 */
	public static String testRandomClassPostfix = testClassPostfix + randomPostfix;
	
	/**
	 * Postfix for generated test classes random method
	 */
	public static String testOCLClassPostfix = testClassPostfix + OCLPostfix;
	
	/**
	 * Postfix for generated test classes random method
	 */
	public static String testGeneticClassPostfix = testClassPostfix+geneticPostfix;
	
	
	public static boolean useCache = false;
	
	public static String testSuitePackage = "testsuite";
	
	public static String testSuiteClass = "SelectTestsSuite";
	
	public static String coverageResourcesFolder = "coverage";
	
	public static boolean generateSetMethod = false;
	
	public static boolean generateGetMethod = false;
	
	//value Min/Max
	public static String constructorType = "Min";
	
	public static String oneTestCoverageObject= "test.object.name=";
	
	public static String oneTestCoveragetype= "test.type=";
	
	public static int geneticPopulation = 50;
	
	public static boolean clickTestProject = true;
	
	public static boolean geneticUseOCL = false;
	
	public static boolean useNullRule = false;
	
	public static boolean noOCLGenerateRandom = true;
	
}
